package com.reservation.service;

import com.reservation.entity.Reservation;
import java.util.List;

public interface ReservationService {
    
    /**
     * 查询所有预约
     */
    List<Reservation> findAll();
    
    /**
     * 根据用户ID查询预约
     */
    List<Reservation> findByUserId(Integer userId);
    
    /**
     * 根据ID查询预约
     */
    Reservation findById(Integer id);
    
    /**
     * 保存预约
     */
    void save(Reservation reservation);
    
    /**
     * 更新预约
     */
    void update(Reservation reservation);
    
    /**
     * 根据ID删除预约
     */
    void deleteById(Integer id);
    
    /**
     * 更新预约状态
     */
    void updateStatus(Integer id, String status);
    
    /**
     * 根据场馆ID查询预约
     */
    List<Reservation> findByVenueId(Integer venueId);
    
    /**
     * 检查时间冲突
     */
    boolean checkTimeConflict(Integer venueId, String startTime, String endTime);
    
    /**
     * 搜索预约
     */
    List<Reservation> search(String keyword, String status);
} 